{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "from scipy.io import loadmat"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [],
   "source": [
    "path = '../data_files/data/ex3data1.mat' \n",
    "data = loadmat(path)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'__header__': b'MATLAB 5.0 MAT-file, Platform: GLNXA64, Created on: Sun Oct 16 13:09:09 2011',\n",
       " '__version__': '1.0',\n",
       " '__globals__': [],\n",
       " 'X': array([[0., 0., 0., ..., 0., 0., 0.],\n",
       "        [0., 0., 0., ..., 0., 0., 0.],\n",
       "        [0., 0., 0., ..., 0., 0., 0.],\n",
       "        ...,\n",
       "        [0., 0., 0., ..., 0., 0., 0.],\n",
       "        [0., 0., 0., ..., 0., 0., 0.],\n",
       "        [0., 0., 0., ..., 0., 0., 0.]]),\n",
       " 'y': array([[10],\n",
       "        [10],\n",
       "        [10],\n",
       "        ...,\n",
       "        [ 9],\n",
       "        [ 9],\n",
       "        [ 9]], dtype=uint8)}"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [],
   "source": [
    "def load_data(path):\n",
    "    data = loadmat(path)\n",
    "    X = data['X']\n",
    "    y = data['y']\n",
    "    return X,y"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "((5000, 400),\n",
       " (5000, 1),\n",
       " array([ 1,  2,  3,  4,  5,  6,  7,  8,  9, 10], dtype=uint8))"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X, y = load_data('ex3/ex3data1.mat')\n",
    "X.shape,y.shape,np.unique(y)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [],
   "source": [
    "def sigmoid(z):\n",
    "    return 1 / (1 + np.exp(-z))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAEsAAABLCAYAAAA4TnrqAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAA6FJREFUeJztmrsvbFEUxr9jrmciZMwlkZgrEckkNBKVkKGiUfgDFDqNRsS/oJHQ63Wikeg0JKKkob0eo5hhgsLbudVe1sSdxzdz5nGv9au+rNlxdj5r7b3XPsfzfR9GYdRVewL/EmYWgZlFYGYRmFkEZhaBmUVgZhGYWQQ/mMGRSMSPRqPlmkvVOD8/RyqV8vKNo8yKRqPY398vflY1ytjYWEHjrAwJzCwCM4vAzCIwswjMLAIzi8DMIqAOpZXE8z4P1KFQKOdY/Xtd3ef///X1VfTb21vJc7LMIjCzCAItQ10CjY2NX+KFvHZz5ff09CSxRCKR83kXFxcSS6fTovv6+kT39vYWPIdsWGYRlJxZenG9vr4Wvb29Lfr+/h5AZuZlw425vb2V2PHxcc5nn56eSuzy8lL03Nyc6LW1NQBAQ0ODxD4+PvLOJ2Nu1OhvjplFUHQZuoX4+flZYuvr66I3NjZEu0U1W9rnW3T1mau+vv7L7zrW1NQkWm8S7+/vOZ9RCJZZBGYWQcllqHl4eBD9+Pgo2r3k6OrqkpjeRVtaWnI+S5fQ2dmZaLcE6N+Hh4dFz8/Pi25ubgbA74AayywCM4ug6DJ06ax3oqWlJdEzMzOiOzo6AADt7e0S02WoWyO3M+q/e3V1JXp2dla0a4N6enoktrKyInpkZES0XhaKxTKLoOR2R5+RdOMai8VEuyzUi2u2s5Vrd1yLBACbm5uiU6mUaHdHtbi4KLGgsyljboH+tf8cM4sg0PssfXVb7DWua1f0TYMuw5eXF9Gu5EZHRyWmr5KDxjKLwMwiqIm3O7p1uru7AwCsrq5KTN8etLa2il5eXgYA9Pf3S0zfggSNZRaBmUVQE2WoW5u9vT0AwOHhocT0AXZ8fFz00NAQgPLugBrLLIKqZZZ+06Nbm62tLQCZ57RIJCJ6YWFBdDgcBpB59ionllkEZhZB1cpQ32ft7OyI3t3dBZBZWvF4XPTg4KDoIL6MYbDMIjCzCCpahrqt0W9kTk5ORN/c3AAAuru7JTY9PS1aX0FbGdYwZhZBRctQH0STyaToo6OjL2P0Hf7k5KToUl6SloplFkFFM0s3xPprl87OTtFuExgYGJCYbrSD+BqmWCyzCMwsgoqWoV6c29raRE9MTIg+ODgAAExNTUnsb1/sVAPLLAIzi8BjPqL3PC8J4Hf5plM1fvm+/zPfIMqs746VIYGZRWBmEZhZBGYWgZlFYGYRmFkEZhbBH5YoDAzq5HxZAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 72x72 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "this should be [7]\n"
     ]
    }
   ],
   "source": [
    "def plot_an_image(X):\n",
    "    '''\n",
    "    随机打印一个数字\n",
    "    '''\n",
    "    pick_one = np.random.randint(0,5000)\n",
    "    image = X[pick_one,:]\n",
    "    fig,ax = plt.subplots(figsize=(1,1))\n",
    "    ax.matshow(image.reshape((20,20)).T, cmap='gray_r')\n",
    "    plt.xticks([])\n",
    "    plt.yticks([])\n",
    "    plt.show()\n",
    "    print('this should be {}'.format(y[pick_one]))\n",
    "\n",
    "plot_an_image(X)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAdIAAAHICAYAAAD6LWvLAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzsnWdgVNXWhp9Jo9cAIkJARewCFkSxYFfUK/beG4p6bSj2a29gR8Frv2Kv2K8FaWKlqAgCNhRBiiAoAiaZ78d8794nJyEJzJwzE+96/wwhk5l19ll7n/WumkgmkxgMBoPBYFgz5GVbAIPBYDAY6jLsQWowGAwGQxqwB6nBYDAYDGnAHqQGg8FgMKQBe5AaDAaDwZAG7EFqMBgMBkMasAepwWAwGAxpwB6kBoPBYDCkAXuQGgwGg8GQBgpW583FxcXJDh06RCXLGmHy5MkLkslk61X9vi7K3KpVq2RJSUmcItWIiRMnVisz1E2566LMUDflrosyFxcX55zMkyZN+lvqR11da1jNB2mHDh14++2311yqCNCmTZsfqvt9hw4deOedd+ISp1Zo3bp1tTKXlJQwZsyYuMSpFRo3blytzJCSe9y4cXGIU2s0bNjwb7vWY8eOjUOcWqNRo0Y1rnVdlHnUqFFxiVMrNGvW7G+rHyNHjoxLnFqhRYsWNa41rOaDNFPIz88HIC8v5VlWv9/S0tJsiPO3QiKRAFJrq39rfcvLyyv8bMg8tObScSHXdVtyFxSkjgTpSllZWdZkAq+rVem1XsN6nYv6rbMurBeSVeuci7IbaobFSA0Gg8FgSAOxM9KCggK+++47AO6++24AfvghxZ4ffvhhABo1agRk3zoLM7pchmStV68eAPPnz2fp0qUANG7cGIBWrVoB8NdffwF147rqGsQsfv75Z8Cv8VprrQVUZiTZRmFhIeB1YsaMGQDUr18f8HJLv6KG1kvrJDlWrlwJwNKlS/nzzz8BWLRoEQCtW6dCWNJz/Y2uqby8PDb5q0JhYSHLli0DYM6cOU4m8GddWD9ywYNRWFjomPSKFSuyLE1uwxipwWAwGAxpIDZGKovwzz//5JprrgHgjTfeAODoo48GPJvKNsIxW8WNchHhOPOTTz4JwJAhQ5wV2alTJwD69esHwE477QRkP/71d4J0ROt/5ZVXAtC8eXMAhg8fDsCGG24IeLaUTRQWFjrmfOeddwIwdOhQAC644AIALr/8ciC++Lr0ecGCBQAuEWzmzJkATJkyxXmwPvvsMwB23nlnwK/tAQccAECPHj0Az7rjhr73iy++4N577wXg9ddfB3Deos6dOwNw7LHHAnDIIYcA0KZNG7fmcUO6PHHiRJYsWQLAjjvuCOTOmRGOk69OfLyqv01XryN/QkhYuTAeeOABlwW33nrrAfDPf/4T8A/SbLk1wu6fW2+9FYDu3buz//77A7lxAEJlBbrtttsAePnllwE46KCD6N27NwCzZs0C4JVXXgFw/5+N5KPwg1+o625m3Q9lLf/444+AN2LkbsyF69QBP3XqVPr37w/gMjz33ntvAA488EDA60hcYQ7J9sADDwBwww03VPh9fn4+3bp1A6Bnz54ATJgwAfDXMGLECADOPvtsAM4//3yWL18OxOOi1jV88803AAwcONAZBA0bNgRgs802A3xY69prr61wDddccw0bbLABEN/DKyz32Wef7R74MhA32WQTIHvnYFgPdV+1vxKJRI06qjNI7vb69eunrd/m2jUYDAaDIQ1Exkj1hBe7fOmllwB44oknnIUll64aJmTbbVBUVATAW2+9BfhkqKFDh9bakg26DaJwzYTLK2QpvvfeewAMGzYMgC233NIlNnzwwQeAvxcfffQRAFtvvXWFz46Sbeizg1Yg+HsuS720tLSSHsjVFL4HwdKBMHOKE/n5+c4FtnDhQsB7V8TwOnbsCGTXo6F1lDt34MCBjgGJ3V133XUAXHzxxYC/T0OGDAGidznqs7t06QJ4d22TJk0A2GijjVxoSPv1yy+/BLw7/eOPPwZw9ePHH388TZs2rfD5UUDr+9NPPwFwxhlnACkXdHFxMQADBgwA/Nn33HPPAX7dVae/5557svHGG1eQOar9GS4jkkzTpk1zSV5i/V27dgWyp8faV0888QTgmby8msccc4zTi/C91v+/9tprgNfx888/nxNOOAFY8zIkY6QGg8FgMKSByBiprLO5c+cCPmnh+++/Z4899gDglFNOqfJv4y47UWxg8uTJQMpCAR/432effSrFbcMF1rLcZKktXbrUJZrovZmAPmvx4sWAT14455xzAG8xrlixgl9++QXwFrLYh5I0HnroIcBb/1FZmYlEwiU+yUoXA9W6iblts802Lnaua504cSIA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rZFKUP766y8nR7t27QDvLtWat23bFoDrrrvOyR/Fuafr0Pmhn8P3tbCwkP/+978AbLjhhkDq/A7+TRR6a65dg8FgMBjSQMYZqazEadOmAd5KPOWUUwDYZJNNnDUjC+Gdd94BUtYS+KSSiRMnArDXXns5VhIF9NlipGIRstLPP/98jj322Ar/J4uye/fuANxwww2At+4aNWrk3hNlgoMssrvvvhuAefPmAVC/fn1eeuklwFvOWtc2bdoAsMsuuwDeCo7Dbad7/sYbbwDe5fnggw8CsN566zn3W66Vu0i3JbtciM2aNWOdddYBPKM78MADAfjHP/4B4Fx7YnOZZtdiwO3bt3dMSPf9559/BuDee+8FcPWFhYWFTkdlvWvtxaoee+wxwLvUunbt6rwyUe7JVSGRSDiZ3333XQDuvPNOwIcCDjvsMACOOuooIKU/mV7vRCLhPlOu3G+//Rbw7vujjz4aSOmHGKnczfJc3HLLLYD3UJx44olA5vei3Pr169d3uqp1Wmuttdw1ASxcuBBIMftFixa5fwN8+umngL/3rVq1AuDUU08FoGXLlpEwUq21zjvto2222QbwZ8TMmTNZunQpAC+++CLg9aBLly4VPiuTMEZqMBgMBkMayBgjDadOi10+8cQTABx00EFAykoOWwQKcjdu3BjwpRB77rlnhc/MNORv/+abb4BUUgJ4tinLu7i4uNLfyurq0KED4JmqrvvSSy91vvko5Bc7UsKA4rrB8gvFQGSxS0atc+/evYEU44ZUAlVUrFRyKXFICQ5du3YFUl4HqBjzyBUmKohNP/zww4C38q+55hr69OkDeJmlO9KTmsoH0kUw8UnQd4ntnHfeeUDKKySZVJYxY8YMwDNbyau/VeJa+/bts8ZEJdebb74J+OvRfpUOhc+iKArxk8mkW3Ml84nx7L///oA/G8rKyth5550BrzPaczovoor/63O33nprALbffvtKvwvvM63XKaecwm+//Qb4+y/WrTjqgAEDAL+Po7iOsrIyl+ykmLJi9zvuuCPg470nn3wyU6ZMAXyin2LC1pDBYDAYDIYcRcYYqRjS9OnTAVx/SsVeZLEErVlZCGPHjgW8taYm0eGsvExDlpgy2hT7EitShuXWW29dyQqXta/4guKMr7zyCpCKjcnyz6QFLytYLP4///kP4GNayv67+OKL3XUobjty5EgA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ydUzLZlMunPizz//BHB7U/s1fFZn4lqMkRoMBoPBkAYyxkhlqXz++eeAt3LEPqdPnw6kgvd77bVX6sv/n6XmqnUjJBIJd30jRowA4OKLLwYqD6r+448/gJTludlmmwHxjlMqKioCUmsbHqCueIxec5URyVJ8+umnAbjooosA2GWXXQC45557Krwv7usIx7lGjhzJY489BuCSJTQked999wU8i/7999+BFCPNBehapDeKhb3++usAfPPNNwAu4WbFihWstdZagGfdccSspcNFRUWVYnn6fu2zXNFrre28efPo378/AG+//TYAhx56KOC9LHFC5668ajrLdHb36NHD/b5fv34V/ubwww8H/LmeaygsLGT+/PkA3HXXXQB88skngL8fygzWudKpU6e0dSYjD9LCwkJeeOEFAC6//HLAHxhSermGioqKuO666wA444wzgNyd26fNm5eXx0cffQTAv/71LyB1oAAMGjQIgA022ACAL7/8Eki5auLY0GH38QMPPACk3DPapJJjt912A6BPnz4AtG/fHsit9c/Pz3cbQW6v2bNnA/7QyVaykdZaxpPctPfdd59zP++zzz4AXHDBBQB0794d8LJLb3IhYSqRSDBr1iwAXnrpJQDGjx8P+Aen9rEMg9LSUgYMGAD4gynKa9EBrnUbNmyYy7LW9/bu3RuAE088sYKs2dZrnX0PPvigy1bef//9AbjhhhuAVAgI4k060nkgnTzssMMAuOSSSwDo3LkzkDqzTzvtNACuuOIKADbccEMANt10UyD7eqxzT4bghAkT3HV89tlngHfxhpMXdd3rr7++u441ncdrrl2DwWAwGNJARhhpMpmkcePGABx88MGAT0TYbrvtAGjbti0Ap556Kk899RQAxx13HOCDv7nikglj5cqV3HLLLYBPHhkyZAgARxxxBOAtyi222AJIWWpRWmuyxOTefPnllwG49tprAVi6dGkltiqWIaYn14bcj9m2LiHFcu69914AVyfZrVs3AC677DIAGjZsCMSvL7J6b731VsDrQH5+PmeddRaAe5X7U+w12+woCO23Rx55xCWY/PbbbwC0a9cO8Pv2qKOOAnDhmLKyMho1agREe01iDUuXLgVwrtGpU6e6f8sLIH3+9NNPAX9/1l57bSD+EhOx6MmTJwMwfPhwtt12WwCGDh0KeP3Ihl5o37Rs2RKAvn37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\n",
      "text/plain": [
       "<Figure size 576x576 with 100 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "def plot_100_image(X):\n",
    "    '''\n",
    "    随机打印100个数字\n",
    "    '''\n",
    "    sample_idx = np.random.choice(np.arange(X.shape[0]),100)\n",
    "    sample_images = X[sample_idx, :] # (100,400)\n",
    "    \n",
    "    fig,ax_array = plt.subplots(nrows = 10,ncols= 10,sharey = True, sharex = True, figsize=(8,8))\n",
    "    \n",
    "    for row in range(10):\n",
    "        for column in range(10):\n",
    "            plt.imshow(sample_images[10*row+column].reshape((20,20)).T)\n",
    "            ax_array[row, column].matshow(sample_images[10*row+column].reshape((20,20)).T,cmap='gray_r')\n",
    "    plt.xticks([])\n",
    "    plt.yticks([])\n",
    "    plt.show()\n",
    "plot_100_image(X)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [],
   "source": [
    "def randomly_select(images, numbers):\n",
    "    \"\"\"\n",
    "    从images中选择numbers张图片\n",
    "    \n",
    "    parameters:\n",
    "    ----------\n",
    "    images : ndarray\n",
    "            多干张图片\n",
    "    numbers : int\n",
    "            随机选择的图片数量\n",
    "    \"\"\"\n",
    "    m = images.shape[0]\n",
    "    n = images.shape[1]\n",
    "    flags = np.zeros((m,), bool)\n",
    "    res = False\n",
    "    for i in range(numbers):\n",
    "        index = np.random.randint(0, m - 1)\n",
    "        while flags[index]:\n",
    "            index = random.randint(0, m)\n",
    "        if type(res) == bool:\n",
    "            res = images[index].reshape(1, n)\n",
    "        else:\n",
    "            res = np.concatenate((res, images[index].reshape(1, n)), axis=0)\n",
    "    return res\n",
    "\n",
    "def mapping(images, images_dimension):\n",
    "    \"\"\"\n",
    "    将若干张图片，组成一张图片\n",
    "\n",
    "    parameters:\n",
    "    ----------\n",
    "    images : ndarray\n",
    "            多干张图片\n",
    "    images_dimension : int\n",
    "            新的正方形大图片中一边上有多少张图片\n",
    "    \"\"\"\n",
    "    image_dimension = int(np.sqrt(images.shape[-1]))\n",
    "    image = False\n",
    "    im = False\n",
    "    for i in images:\n",
    "        if type(image) == bool:\n",
    "            image = i.reshape(image_dimension, image_dimension)\n",
    "        else:\n",
    "            if image.shape[-1] == image_dimension * images_dimension:\n",
    "                if type(im) == bool:\n",
    "                    im = image\n",
    "                else:\n",
    "                    im = np.concatenate((im, image), axis=0)\n",
    "                image = i.reshape(image_dimension, image_dimension)\n",
    "            else:\n",
    "                image = np.concatenate((image, i.reshape(image_dimension, image_dimension)), axis=1)\n",
    "    return np.concatenate((im, image), axis=0)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "im = mapping(randomly_select(X, 100), 10)\n",
    "plt.imshow(im.T)  # 图片是镜像的需要转置让它看起来更更正常\n",
    "plt.axis('off')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7f1d0b733a10>"
      ]
     },
     "execution_count": 40,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAQIAAAD2CAYAAAA9O4nrAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAABwFJREFUeJzt3E2InWcZx+H/e86ZMx+1aWIUa7WdplaMrVoMghCjqCDWfcmyuxaVoriIiCBuuhKEUqHYSLvThRqU4iKu/MBas6gVKkb6EaipGYkmTUhz2szHeV25EBq4n5iTzDjXtSw3T17mzPzOC715ur7vA2xvg+v9AMD1JwSAEABCAEQIgCSj6/0A/3Hv7gf97wuYsaNnDndv9d+9EQBCAAgBECEAIgRAhACIEAARAiBCAEQIgAgBECEAIgRAhACIEAARAiBCAEQIgAgBECEAIgRAhACIEAARAiBCAEQIgAgBECEAIgRAhACIEAARAiDJ6Ho/wKaysVEenU4mpbm+4czNYDA/Xx+em5vJM3RdVx8eDmfyDNuNNwJACAAhACIEQIQAiBAAEQIgQgBECIAIAZBtsGLcr66WZ7tb3lWeffHbN5Xm7r51pXzmpfXZfByLo7Xy7Imn3leevfmZi+XZfq7+nTN+5Ux5dvrP+mw3HpdntxtvBIAQAEIARAiACAEQIQAiBECEAIgQANmqm4X9tDzask124UPvLM8e2veL0twXd/69fOZkWt+CnJWVr9Sf4cJD9ctL57v6Ja73PftAeXb5Wwvl2f5kbcuzG23NP4v/hTcCQAgAIQAiBECEAIgQABECIEIARAiACAGQLbpi3K+t12c/uKc8e/Dho+XZ/Usvl+b+tl5/1vrCbptJX59t+WZ4x7B+KWp9KTw59vEnyrP77v9aeXbPN14ozQ131i6mbdZt3u/dzftkwDUjBIAQAEIARAiACAEQIQAiBECEAIgQANmiK8bdcFieHaycLc8+8sfPlmc/vP9kaW55dLF85vdf+0h59vHnPlme/fWnHy3PbjSsI7esDbecO9/Vl61Hd14ozw4Wajce96v11el0XX10ruHP7RqvI3sjAIQAEAIgQgBECIAIARAhACIEQIQAiBAASbq+b9j9nKF7dz84mwfp64uw04tvlGc39t9dmjvxQPnIjF9arP/7H6ivLv/+wGPl2UnD70PLt0jLOnKLltXlLxz7Umlu8bc3ls8cn68/wO6jL5Vns7Zan21YRz565vBb7kR7IwCEABACIEIARAiACAEQIQAiBECEAIgQANmitxg3aVi/HLzthvq5Tz9fGtt78r3lIyeP129c/sneH5VnL0xntEZev8A3azN6hLmGZzi2/3Bp7s8fmy+feW66VJ793vH7yrPdX07UZ+frz3s53ggAIQCEAIgQABECIEIARAiACAEQIQAiBEC2w4pxi4Ybj7vxuDS38vl3l8/84fu/W559s+G24ZYbhLfaN0PLLcZnNzZKc8ujSfnMjw7Wy7OPLNT/3K71H+ZW+9yBGRACQAgAIQAiBECEAIgQABECIEIARAiAWDG+Yt0NtRuPbz74SvnM5VH94zg/XS3Pttz026LlW2RWz7DU1Q8etly7XLSyUf8cBusty97XljcCQAgAIQAiBECEAIgQABECIEIARAiACAEQK8ZXbq22Wnr8+J7ykc8t1z+OtzfcnnvjoL7autZwK3DLxm7LbcM7B/Xvp4dPHyjP/vz4PaW5+YW18pnDP+woz9764l/LsxnP1WevAm8EgBAAQgBECIAIARAhACIEQIQAiBAAEQIgVoz/W1fvYr9eW/G96zv/KJ956DdfLs/+6576fu+jB58sz941PlOebbHQsI789VOfK8+e+Obe8uydv/pTaW6wMF8+s0nL2nDD7+LV4I0AEAJACIAIARAhACIEQIQAiBAAEQIgQgDEivEV60a1H11/9lz5zB1HTpVndx27pTz72Cc+U5598o4j5dlJX7+aeKFhZfbpp2q3DSfJbb97tjw7uKl+4/B2440AEAJACIAIARAhACIEQIQAiBAAEQIgNgtnbzgsj3aLi/VzG7b6Lq3XP+a5hg3ApUzLs7+cvKc8u+uFjfJs1/Dz5fK8EQBCAAgBECEAIgRAhACIEAARAiBCAEQIgFgx3rq6rjw6P1orzy509V+JpYZ15CdePVCe3fnMq+XZqRXjq8IbASAEgBAAEQIgQgBECIAIARAhACIEQIQAiBXjTaUb1rvcv/Fmefb0D+4oz+677avl2UP3/7Q8e+rcjvLs7d358ixXhzcCQAgAIQAiBECEAIgQABECIEIARAiACAEQK8abS8OtwLl0qTy662fP12frT5AfH/lUefb21dfLs/3rF8uzLWvZXJ6fIiAEgBAAEQIgQgBECIAIARAhACIEQIQAiBXjrathHbkbj2fzDCuny6N9y7nDYX22ZS2by/JTBIQAEAIgQgBECIAIARAhACIEQIQAiBAASbq+b1r+BP4PeSMAhAAQAiBCAEQIgAgBECEAIgRAhACIEAARAiBCAEQIgAgBECEAIgRAhACIEAARAiBCAEQIgCT/BoPRAiyX+x9eAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "n = np.random.randint(0,5000)\n",
    "image = X[n,:]\n",
    "image = image.reshape((20,20))\n",
    "plt.axis('off')\n",
    "plt.imshow(image.T)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {},
   "outputs": [],
   "source": [
    "def regularized_cost(theta, X, y, l):\n",
    "    thetaReg = theta[1:]\n",
    "    first = -y * np.log(sigmoid(X @ theta))\n",
    "    second = -(1 - y) * np.log(1 - sigmoid(X @ theta))\n",
    "    reg = (thetaReg@thetaReg)*l / (2*len(X))\n",
    "    return np.mean(first+second) + reg"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [],
   "source": [
    "def regularized_gradient(theta, X, y, l):\n",
    "    thetaReg = theta[1:]\n",
    "    first = (1 / len(X)) * X.T @ (sigmoid(X @ theta) - y)\n",
    "    reg = np.concatenate([np.array([0]), (l / len(X)) * l *thetaReg])\n",
    "    return first + reg"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [],
   "source": [
    "from scipy.optimize import minimize\n",
    "def one_vs_all( X, y, l, K):\n",
    "    all_theta = np.zeros((K, X.shape[1]))\n",
    "    for i in range(1,K+1):\n",
    "        theta = np.zeros(X.shape[1])\n",
    "        y_i = np.array([1 if label == i else 0 for label in y])\n",
    "        ret = minimize(fun=regularized_cost, x0=theta, args=(X, y_i, l), method='TNC',\n",
    "                       jac=regularized_gradient, options={'disp': True})\n",
    "        all_theta[i-1,:] = ret.x\n",
    "        \n",
    "    return all_theta"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [],
   "source": [
    "def predict_all(X, all_theta):\n",
    "    h = sigmoid(X @ all_theta.T)\n",
    "    h_argmax = np.argmax(h,axis=1)\n",
    "    h_argmax += 1\n",
    "#     print(h.shape)\n",
    "    return h_argmax"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[-2.38299535e+00,  0.00000000e+00,  0.00000000e+00, ...,\n",
       "         1.30403473e-03, -6.61046834e-10,  0.00000000e+00],\n",
       "       [-3.18287716e+00,  0.00000000e+00,  0.00000000e+00, ...,\n",
       "         4.44785394e-03, -5.07096090e-04,  0.00000000e+00],\n",
       "       [-4.80099131e+00,  0.00000000e+00,  0.00000000e+00, ...,\n",
       "        -2.87340850e-05, -2.46227376e-07,  0.00000000e+00],\n",
       "       ...,\n",
       "       [-7.98810401e+00,  0.00000000e+00,  0.00000000e+00, ...,\n",
       "        -8.95110562e-05,  7.21802891e-06,  0.00000000e+00],\n",
       "       [-4.57373512e+00,  0.00000000e+00,  0.00000000e+00, ...,\n",
       "        -1.33624688e-03,  9.99568819e-05,  0.00000000e+00],\n",
       "       [-5.40174011e+00,  0.00000000e+00,  0.00000000e+00, ...,\n",
       "        -1.16425501e-04,  7.86672578e-06,  0.00000000e+00]])"
      ]
     },
     "execution_count": 45,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "raw_X, raw_y = load_data(path)\n",
    "X = np.insert(raw_X, 0 ,1,axis=1)\n",
    "y = raw_y.flatten()\n",
    "\n",
    "all_theta = one_vs_all(X, y, 1, 10)\n",
    "all_theta"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "accuracy = 94.46%\n"
     ]
    }
   ],
   "source": [
    "y_pred = predict_all(X, all_theta)\n",
    "# print(y_pred.shape)\n",
    "accuracy = np.mean(y_pred == y)\n",
    "print ('accuracy = {0}%'.format(accuracy * 100))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "              precision    recall  f1-score   support\n",
      "\n",
      "           1       0.99      0.95      0.97       517\n",
      "           2       0.92      0.95      0.93       485\n",
      "           3       0.91      0.95      0.93       480\n",
      "           4       0.95      0.95      0.95       504\n",
      "           5       0.92      0.92      0.92       499\n",
      "           6       0.98      0.97      0.97       505\n",
      "           7       0.95      0.95      0.95       500\n",
      "           8       0.92      0.93      0.92       497\n",
      "           9       0.92      0.92      0.92       503\n",
      "          10       0.99      0.97      0.98       510\n",
      "\n",
      "    accuracy                           0.94      5000\n",
      "   macro avg       0.94      0.94      0.94      5000\n",
      "weighted avg       0.95      0.94      0.94      5000\n",
      "\n"
     ]
    }
   ],
   "source": [
    "from sklearn.metrics import classification_report\n",
    "report=classification_report(y_pred,y)\n",
    "print(report)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {},
   "outputs": [],
   "source": [
    "X, y = load_data(path)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "metadata": {},
   "outputs": [],
   "source": [
    "def load_weights(path):\n",
    "    data = loadmat(path)\n",
    "    return data['Theta1'],data['Theta2']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "metadata": {},
   "outputs": [],
   "source": [
    "theta1,theta2 = load_weights('../data_files/data/ex3weights.mat')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "((25, 401), (10, 26))"
      ]
     },
     "execution_count": 51,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "theta1.shape,theta2.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "metadata": {},
   "outputs": [],
   "source": [
    "y = y.flatten()\n",
    "X = np.insert(X, 0, values=np.ones(X.shape[0]), axis=1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(5000, 25)"
      ]
     },
     "execution_count": 53,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "a1 = X\n",
    "z2 = a1 @ theta1.T\n",
    "z2.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {},
   "outputs": [],
   "source": [
    "z2 = np.insert(z2,0,1,axis=1)\n",
    "a2 = sigmoid(z2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(5000, 10)"
      ]
     },
     "execution_count": 55,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "z3 = a2 @ theta2.T\n",
    "z3.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(5000, 10)"
      ]
     },
     "execution_count": 56,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "a3 = sigmoid(z3)\n",
    "a3.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "              precision    recall  f1-score   support\n",
      "\n",
      "           1       0.98      0.97      0.97       508\n",
      "           2       0.97      0.98      0.97       493\n",
      "           3       0.96      0.98      0.97       491\n",
      "           4       0.97      0.97      0.97       499\n",
      "           5       0.98      0.98      0.98       503\n",
      "           6       0.99      0.97      0.98       507\n",
      "           7       0.97      0.98      0.97       495\n",
      "           8       0.98      0.98      0.98       502\n",
      "           9       0.96      0.97      0.96       497\n",
      "          10       0.99      0.98      0.99       505\n",
      "\n",
      "    accuracy                           0.98      5000\n",
      "   macro avg       0.98      0.98      0.98      5000\n",
      "weighted avg       0.98      0.98      0.98      5000\n",
      "\n",
      "accuracy = 97.52%\n"
     ]
    }
   ],
   "source": [
    "y_pred = np.argmax(a3,axis=1) + 1\n",
    "report = classification_report(y_pred,y)\n",
    "print(report)\n",
    "accuracy = np.mean(y_pred == y)\n",
    "print ('accuracy = {0}%'.format(accuracy * 100))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
